package com.voxel.sense.infomsg.module.firm;

import com.example.com.common.app.BaseContract;
import com.voxel.sense.infomsg.data.bean.ConditionBean;
import cyy.example.com.facotry.model.api.response.FirmListEntity;

import java.util.List;

/**
 * Created by ChenYiYao on 2018/2/8.
 */

public interface FirmListInfoContract {
    interface Presenter extends BaseContract.Presenter {

        /**
         * 加载筛选菜单栏的数据
         */
        void doLoadFilterMenuData();

        /**
         * 添加查询条件
         */
        void putSearTarget(String type, String value);

        /**
         * 移除查询条件
         */
        void removeSearchData(String type, String value);

        /**
         * 进行查询有关的公司
         */
        void doSearchFirmList();

        /**
         * 请求数据
         */
        void doLoadData();

        /**
         * 再起请求数据
         */
        void doLoadMoreData();

        /**
         * 清除搜索条件
         *
         * @param type 类型
         */
        void doCleanCondition(String type);

    }

    interface View extends BaseContract.RecyclerView<Presenter, FirmListEntity> {

        /**
         * 获取违法记录查询条件
         *
         * @return
         */
        void onRefreshSmartMenuUI(List<ConditionBean> list);

        /**
         * 获取监管性质查询条件
         *
         * @return
         */
        void onRefreshIdustryMenuData(List<ConditionBean> list);

        /**
         * 获取监管等级查询条件
         *
         * @return
         */
        void onRefreshSuperviseMenuData(List<ConditionBean> natureList, List<ConditionBean> LevelList);

    }
}
